// 7-3 求数列之和 (4.4.2) (25分)
// 已知Fibonacci数列的各项数值为：1，1，2，3，5，8，13，21，......。 现在要求编写程序，计算数列 1 + 1/2 + 1/3 + 1/5 + 1/8 + ... 的前n项和。注意该序列的分母依次为Fibonacci数列数据项。

// 输入格式:
// 输入要计算的数列项数n。

// 输出格式:
// 按照“sum = 数列和”的格式输出计算得到的数列和，精度为小数点后6位。题目保证计算不超过双精度范围。
#include <stdio.h>

int main()
{
    double first, second, sumN, temp;
    int n;
    scanf("%d", &n);
    temp = second = first = 1;
    sumN = 0;
    for (int i = 0; i <= n; ++i)
    {
        sumN += 1 / first;
        temp = first + second;
        first = second;
        second = temp;
    }
    sumN--;
    printf("sum = %.6f", sumN);

    return 0;
}

// 输入样例:
// 20
// 输出样例:
// sum = 2.359738